package qc.module.ehs.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import qc.common.core.enums.ResourceStatusFlagEnum;

import java.io.Serializable;
import java.util.Date;

/**
 * EhsUnitBasic
 * 单元划分基础信息表
 *
 * @author QuCheng Tech
 * @since 2024/5/21
 */
@Data
@TableName("ehs_unit_info")
public class EhsUnitInfo implements Serializable,Cloneable {
    /** 单元ID */
    @TableId
    private String unitid;
    
    /** 单元名称 */
    private String unitname ;
    
    /** 组织编码 */
    private String orgcode ;

    /** 上级单元ID */
    private String parentid;

    /** 层级编码*/
    private String levelcode;

    /** 是否为在建阶段;是否为在建工程单元 */
    private Boolean isconstruction ;

    /*状态标记;使用枚举类ResourceStatusFlagEnum*/
    private ResourceStatusFlagEnum flag;

    /** 单元分类代码 */
    private String uccd ;

    /** 经度 */
    private Double longitude ;

    /** 纬度 */
    private Double latitude ;

    /** 具体位置/部位；所在乡镇、村庄文字信息 */
    private String location ;

    /** 简介文字;介绍信息文字 */
    private String introduction ;

    /*底图；用于显示危险源空间分布图的底图*/
    private String bgimg;
    
    /*排序号*/
    private Integer odr;
    
    
    /** 责任部门ID */
    //在Mybatis-Plus的更新方法中，如果没有提前指定的话，更新后的结果为空值时会被自动过滤掉，因此要在实体类的字段上提前声明。
    //@TableField(updateStrategy = FieldStrategy.IGNORED)
    private Integer resdeptid ;
    
    /*责任部门名称*/
    private String resdeptname;
    
    /*责任人ID*/
    private Integer resuserid;
    
    /*责任人名称*/
    private String resusername;
    
    /*责任人电话*/
    private String resuserphone;
    
    /*安全员ID*/
    private Integer safeuserid;
    
    /*安全员名称*/
    private String safeusername;
    
    /*安全员电话*/
    private String safeuserphone;
    
    /*危险源辨识时间；进行危险源辨识的最新时间*/
    private Date idtm;

    /*一般危险源数量*/
    private Integer general1;

    /*重大危险源数量*/
    private Integer major1;

    /*风险等级1危险源数量*/
    private Integer level11;

    /*风险等级2危险源数量*/
    private Integer level12;

    /*风险等级3危险源数量*/
    private Integer level13;

    /*风险等级4危险源数量*/
    private Integer level14;

    /*一般风险隐患数量*/
    private Integer general2;

    /*重大风险隐患数量*/
    private Integer major2;

    /*风险等级1隐患数量*/
    private Integer level21;

    /*风险等级2隐患数量*/
    private Integer level22;

    /*风险等级3隐患数量*/
    private Integer level23;

    /*风险等级4隐患数量*/
    private Integer level24;
}
